const express = require('express')
const app = express()

//导入路由模块
const userRouter = require('./4.创建路由模块.js')

//1.中间件，就是逻辑处理的过程，本质就是一个函数
//2.中间件必须包含 next
//3.一定要在路由之前注册中间件
//4.一个请求，可以连续调用多个中间件
//5.中间件里面的逻辑执行完，一定要 next() 出来
//6.多个中间件共享 req , res 对象 

//全局中间件 ； 只要请求到达服务器，必然会先调用这个中间件
app.use((req,res,next)=>{
    console.log('这是全局中间件的逻辑');
    next()
})


//局部中间件
app.get('/',(req,res,next)=>{
    console.log('这是逻辑');
    next()
})

//中间件函数可以连着用,send()会终结这种调用，send()之后的中间件是无效的
app.get('/',(req,res,next)=>{
    console.log('这是逻辑');
    next()
},(req,res,next)=>{
    console.log('这是逻辑2');
    next()
},(req,res,next)=>{
    console.log('这是逻辑3');
    res.send()      
})



app.use(userRouter)




app.listen(8848,()=>{
    console.log('app is running at http://127.0.0.1:8848');
})